<!DOCTYPE html>
<html lang="en" dir="ltr" class="client-nojs">
<head>
<title>Lookup and name spaces - cppreference.com</title>
<meta charset="UTF-8">
<meta name="generator" content="MediaWiki 1.21.2">
<link rel="shortcut icon" href="../../../common/favicon.ico">
<link rel="stylesheet" href="../../../common/ext.css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link rel="stylesheet" href="../../../common/site_modules.css">
<style>a:lang(ar),a:lang(ckb),a:lang(fa),a:lang(kk-arab),a:lang(mzn),a:lang(ps),a:lang(ur){text-decoration:none}#toc{display:none}.editsection{display:none}
/* cache key: mwiki1-mwiki_en_:resourceloader:filter:minify-css:7:472787eddcf4605d11de8c7ef047234f */</style>

<script src="../../../common/startup_scripts.js"></script>
<script>if(window.mw){
mw.config.set({"wgCanonicalNamespace":"","wgCanonicalSpecialPageName":false,"wgNamespaceNumber":0,"wgPageName":"c/language/name_space","wgTitle":"c/language/name space","wgCurRevisionId":136120,"wgArticleId":13877,"wgIsArticle":true,"wgAction":"view","wgUserName":null,"wgUserGroups":["*"],"wgCategories":[],"wgBreakFrames":false,"wgPageContentLanguage":"en","wgSeparatorTransformTable":["",""],"wgDigitTransformTable":["",""],"wgDefaultDateFormat":"dmy","wgMonthNames":["","January","February","March","April","May","June","July","August","September","October","November","December"],"wgMonthNamesShort":["","Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],"wgRelevantPageName":"c/language/name_space","wgRestrictionEdit":[],"wgRestrictionMove":[]});
}</script><script>if(window.mw){
mw.loader.implement("user.options",function(){mw.user.options.set({"ccmeonemails":0,"cols":80,"date":"default","diffonly":0,"disablemail":0,"disablesuggest":0,"editfont":"default","editondblclick":0,"editsection":0,"editsectiononrightclick":0,"enotifminoredits":0,"enotifrevealaddr":0,"enotifusertalkpages":1,"enotifwatchlistpages":0,"extendwatchlist":0,"externaldiff":0,"externaleditor":0,"fancysig":0,"forceeditsummary":0,"gender":"unknown","hideminor":0,"hidepatrolled":0,"imagesize":2,"justify":0,"math":1,"minordefault":0,"newpageshidepatrolled":0,"nocache":0,"noconvertlink":0,"norollbackdiff":0,"numberheadings":0,"previewonfirst":0,"previewontop":1,"quickbar":5,"rcdays":7,"rclimit":50,"rememberpassword":0,"rows":25,"searchlimit":20,"showhiddencats":0,"showjumplinks":1,"shownumberswatching":1,"showtoc":0,"showtoolbar":1,"skin":"cppreference2","stubthreshold":0,"thumbsize":2,"underline":2,"uselivepreview":0,"usenewrc":0,"watchcreations":0,"watchdefault":0,"watchdeletion":0,
"watchlistdays":3,"watchlisthideanons":0,"watchlisthidebots":0,"watchlisthideliu":0,"watchlisthideminor":0,"watchlisthideown":0,"watchlisthidepatrolled":0,"watchmoves":0,"wllimit":250,"variant":"en","language":"en","searchNs0":true,"searchNs1":false,"searchNs2":false,"searchNs3":false,"searchNs4":false,"searchNs5":false,"searchNs6":false,"searchNs7":false,"searchNs8":false,"searchNs9":false,"searchNs10":false,"searchNs11":false,"searchNs12":false,"searchNs13":false,"searchNs14":false,"searchNs15":false,"gadget-ColiruCompiler":1,"gadget-MathJax":1});;},{},{});mw.loader.implement("user.tokens",function(){mw.user.tokens.set({"editToken":"+\\","patrolToken":false,"watchToken":false});;},{},{});
/* cache key: mwiki1-mwiki_en_:resourceloader:filter:minify-js:7:9f05c6caceb9bb1a482b6cebd4c5a330 */
}</script>
<script>if(window.mw){
mw.loader.load(["mediawiki.page.startup","mediawiki.legacy.wikibits","mediawiki.legacy.ajax"]);
}</script>
<style type="text/css">/*<![CDATA[*/
.source-c {line-height: normal;}
.source-c li, .source-c pre {
	line-height: normal; border: 0px none white;
}
/**
 * GeSHi Dynamically Generated Stylesheet
 * --------------------------------------
 * Dynamically generated stylesheet for c
 * CSS class: source-c, CSS id: 
 * GeSHi (C) 2004 - 2007 Nigel McNie, 2007 - 2008 Benny Baumann
 * (http://qbnz.com/highlighter/ and http://geshi.org/)
 * --------------------------------------
 */
.c.source-c .de1, .c.source-c .de2 {font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;}
.c.source-c  {font-family:monospace;}
.c.source-c .imp {font-weight: bold; color: red;}
.c.source-c li, .c.source-c .li1 {font-weight: normal; vertical-align:top;}
.c.source-c .ln {width:1px;text-align:right;margin:0;padding:0 2px;vertical-align:top;}
.c.source-c .li2 {font-weight: bold; vertical-align:top;}
.c.source-c .kw1 {color: #0000dd;}
.c.source-c .kw2 {color: #0000ff;}
.c.source-c .kw3 {color: #0000dd;}
.c.source-c .kw4 {color: #0000ff;}
.c.source-c .co1 {color: #909090;}
.c.source-c .co2 {color: #339900;}
.c.source-c .coMULTI {color: #ff0000; font-style: italic;}
.c.source-c .es0 {color: #008000; font-weight: bold;}
.c.source-c .es1 {color: #008000; font-weight: bold;}
.c.source-c .es2 {color: #008000; font-weight: bold;}
.c.source-c .es3 {color: #008000; font-weight: bold;}
.c.source-c .es4 {color: #008000; font-weight: bold;}
.c.source-c .es5 {color: #008000; font-weight: bold;}
.c.source-c .br0 {color: #008000;}
.c.source-c .sy0 {color: #008000;}
.c.source-c .sy1 {color: #000080;}
.c.source-c .sy2 {color: #000040;}
.c.source-c .sy3 {color: #000040;}
.c.source-c .sy4 {color: #008080;}
.c.source-c .st0 {color: #008000;}
.c.source-c .nu0 {color: #000080;}
.c.source-c .nu6 {color:#000080;}
.c.source-c .nu8 {color:#000080;}
.c.source-c .nu12 {color:#000080;}
.c.source-c .nu16 {color:#000080;}
.c.source-c .nu17 {color:#000080;}
.c.source-c .nu18 {color:#000080;}
.c.source-c .nu19 {color:#000080;}
.c.source-c .ln-xtra, .c.source-c li.ln-xtra, .c.source-c div.ln-xtra {background-color: #ffc;}
.c.source-c span.xtra { display:block; }

/*]]>*/
</style><!--[if lt IE 7]><style type="text/css">body{behavior:url("/mwiki/skins/cppreference2/csshover.min.htc")}</style><![endif]--></head>
<body class="mediawiki ltr sitedir-ltr ns-0 ns-subject page-c_language_name_space skin-cppreference2 action-view cpp-navbar">
        <!-- header -->
        <!-- /header -->
        <!-- content -->
<div id="cpp-content-base">
            <div id="content">
                <a id="top"></a>
                <div id="mw-js-message" style="display:none;"></div>
                                <!-- firstHeading -->
<h1 id="firstHeading" class="firstHeading">Lookup and name spaces</h1>
                <!-- /firstHeading -->
                <!-- bodyContent -->
                <div id="bodyContent">
                                        <!-- tagline -->
                    <div id="siteSub">From cppreference.com</div>
                    <!-- /tagline -->
                                        <!-- subtitle -->
                    <div id="contentSub"><span class="subpages">&lt; <a href="../../c.html" title="c">c</a>‎ | <a href="../language.html" title="c/language">language</a></span></div>
                    <!-- /subtitle -->
                                                            <!-- bodycontent -->
                    <div id="mw-content-text" lang="en" dir="ltr" class="mw-content-ltr"><div class="t-navbar" style=""><div class="t-navbar-sep"> </div><div class="t-navbar-head"><a href="../../c.html" title="c"> C</a><div class="t-navbar-menu"><div><div><table class="t-nv-begin" cellpadding="0" style="line-height:1.1em;">
<tr class="t-nv"><td colspan="5"> <a href="../language.html" title="c/language"> Language</a> </td></tr>
<tr class="t-nv"><td colspan="5"> <a href="../header.html" title="c/header"> Headers</a> </td></tr>
<tr class="t-nv"><td colspan="5"> <a href="../types.html" title="c/types"> Type support</a> </td></tr>
<tr class="t-nv"><td colspan="5"> <a href="../program.html" title="c/program"> Program utilities</a> </td></tr>
<tr class="t-nv"><td colspan="5"> <a href="../variadic.html" title="c/variadic"> Variadic function support</a> </td></tr>
<tr class="t-nv"><td colspan="5"> <a href="../error.html" title="c/error"> Error handling</a> </td></tr>
<tr class="t-nv"><td colspan="5"> <a href="../memory.html" title="c/memory"> Dynamic memory management</a> </td></tr>
<tr class="t-nv"><td colspan="5"> <a href="../string.html" title="c/string"> Strings library</a> </td></tr>
<tr class="t-nv"><td colspan="5"> <a href="../algorithm.html" title="c/algorithm"> Algorithms</a> </td></tr>
<tr class="t-nv"><td colspan="5"> <a href="../numeric.html" title="c/numeric"> Numerics</a> </td></tr>
<tr class="t-nv"><td colspan="5"> <a href="../chrono.html" title="c/chrono"> Date and time utilities</a> </td></tr>
<tr class="t-nv"><td colspan="5"> <a href="../io.html" title="c/io"> Input/output support</a> </td></tr>
<tr class="t-nv"><td colspan="5"> <a href="../locale.html" title="c/locale"> Localization support</a> </td></tr>
<tr class="t-nv"><td colspan="5"> <a href="../thread.html" title="c/thread"> Concurrency support</a> <span class="t-mark-rev t-since-c11">(C11)</span> </td></tr>
<tr class="t-nv"><td colspan="5"> <a href="../experimental.html" title="c/experimental"> Technical Specifications</a> </td></tr>
<tr class="t-nv"><td colspan="5"> <a href="../index.html" title="c/symbol index"> Symbol index</a> </td></tr>
</table></div><div></div></div></div></div><div class="t-navbar-sep"> </div><div class="t-navbar-head"><a href="../language.html" title="c/language"> C language</a><div class="t-navbar-menu"><div><div><table class="t-nv-begin" cellpadding="0" style="">
<tr class="t-nv"><td colspan="5"> <a href="basic_concepts.html" title="c/language/basic concepts">Basic concepts</a></td></tr>
<tr class="t-nv"><td colspan="5"> <a href="../keyword.html" title="c/keyword"> Keywords</a></td></tr>
<tr class="t-nv"><td colspan="5"> <a href="../preprocessor.html" title="c/preprocessor"> Preprocessor</a></td></tr>
<tr class="t-nv"><td colspan="5"> <a href="statements.html" title="c/language/statements"> Statements</a></td></tr>
<tr class="t-nv"><td colspan="5"> <a href="expressions.html" title="c/language/expressions"> Expressions</a></td></tr>
<tr class="t-nv"><td colspan="5"> <a href="initialization.html" title="c/language/initialization"> Initialization</a></td></tr>
<tr class="t-nv"><td colspan="5"> <a href="declarations.html" title="c/language/declarations"> Declarations</a></td></tr>
<tr class="t-nv"><td colspan="5"> <a href="functions.html" title="c/language/functions"> Functions</a></td></tr>
<tr class="t-nv-h2"><td colspan="5"> Miscellaneous</td></tr>
<tr class="t-nv"><td colspan="5"> <a href="history.html" title="c/language/history"> History of C</a></td></tr>
<tr class="t-nv"><td colspan="5"> <a href="../experimental.html" title="c/experimental">Technical Specifications</a> </td></tr>
</table></div><div></div></div></div></div><div class="t-navbar-sep"> </div><div class="t-navbar-head"><a href="basic_concepts.html" title="c/language/basic concepts"> Basic Concepts</a><div class="t-navbar-menu"><div><div style="display:inline-block">
<div><table class="t-nv-begin" cellpadding="0" style="">
<tr class="t-nv"><td colspan="5"> <a href="../comment.html" title="c/comment"> Comments</a></td></tr>
<tr class="t-nv"><td colspan="5"> <a href="ascii.html" title="c/language/ascii"> ASCII</a></td></tr>
<tr class="t-nv"><td colspan="5"> <a href="translation_phases.html" title="c/language/translation phases"> Translation phases</a></td></tr>
<tr class="t-nv"><td colspan="5"> <a href="punctuators.html" title="c/language/punctuators">Punctuation</a></td></tr>
<tr class="t-nv"><td colspan="5"> <a href="identifier.html" title="c/language/identifier">Identifier</a></td></tr>
<tr class="t-nv"><td colspan="5"> <a href="scope.html" title="c/language/scope">Scope</a></td></tr>
<tr class="t-nv"><td colspan="5"> <a href="lifetime.html" title="c/language/lifetime">Lifetime</a></td></tr>
<tr class="t-nv"><td colspan="5"> <strong class="selflink">Lookup and name spaces</strong></td></tr>
<tr class="t-nv"><td colspan="5"> <a href="compatible_type.html" title="c/language/type">Type</a></td></tr>
<tr class="t-nv"><td colspan="5"> <a href="arithmetic_types.html" title="c/language/arithmetic types">Arithmetic types</a></td></tr>
<tr class="t-nv"><td colspan="5"> <a href="object.html" title="c/language/object">Objects and alignment</a></td></tr>
<tr class="t-nv"><td colspan="5"> <a href="main_function.html" title="c/language/main function">The main() function</a></td></tr>
<tr class="t-nv"><td colspan="5"> <a href="as_if.html" title="c/language/as if">The as-if rule</a></td></tr>
<tr class="t-nv"><td colspan="5"> <a href="behavior.html" title="c/language/behavior">Undefined behavior</a></td></tr>
<tr class="t-nv"><td colspan="5"> <a href="memory_model.html" title="c/language/memory model">Memory model and data races</a></td></tr>
</table></div>
</div><div></div></div></div></div><div class="t-navbar-sep"> </div></div>
<p>When an <a href="identifier.html" title="c/language/identifier">identifier</a> is encountered in a C program, a lookup is performed to locate the <a href="declarations.html" title="c/language/declarations">declaration</a> that introduced that identifier and that is currently <a href="scope.html" title="c/language/scope">in scope</a>. C allows more than one declaration for the same identifier to be in scope simultaneously if these identifiers belong to different categories, called <i>name spaces</i>:
</p>
<div class="t-li1"><span class="t-li">1)</span> Label name space: all identifiers declared as <a href="statements.html#Labels" title="c/language/statements">labels</a>.</div>
<div class="t-li1"><span class="t-li">2)</span> Tag names: all identifiers declared as names of <a href="struct.html" title="c/language/struct">structs</a>, <a href="union.html" title="c/language/union">unions</a> and <a href="enum.html" title="c/language/enum">enumerated types</a>. Note that all three kinds of tags share one name space.</div>
<div class="t-li1"><span class="t-li">3)</span> Member names: all identifiers declared as members of any one <a href="struct.html" title="c/language/struct">struct</a> or <a href="union.html" title="c/language/union">union</a>. Every struct and union introduces its own name space of this kind.</div>
 <table class="t-rev-begin">
<tr class="t-rev t-since-c23"><td>
<div class="t-li1"><span class="t-li">4)</span> Global attribute name space: <a href="attributes.html" title="c/language/attributes">attribute tokens</a> defined by the standard or implementation-defined attribute prefixes.</div>
<div class="t-li1"><span class="t-li">5)</span> Non-standard attribute names: attribute names following attribute prefixes. Each attribute prefix has a separate name space for the implementation-defined attributes it introduces.</div>
</td>
<td><span class="t-mark-rev t-since-c23">(since C23)</span></td></tr>
</table>
<div class="t-li1"><span class="t-li">6)</span> All other identifiers, called <i>ordinary identifiers</i> to distinguish from <span class="t-v">(1-5)</span> (function names, object names, typedef names, enumeration constants).</div>
<p>At the point of lookup, the name space of an identifier is determined by the manner in which it is used:
</p>
<div class="t-li1"><span class="t-li">1)</span> identifier appearing as the operand of a <a href="goto.html" title="c/language/goto">goto statement</a> is looked up in the label name space.</div>
<div class="t-li1"><span class="t-li">2)</span> identifier that follows the keyword <span class="t-c"><span class="mw-geshi c source-c"><span class="kw1">struct</span></span></span>, <span class="t-c"><span class="mw-geshi c source-c"><span class="kw1">union</span></span></span>, or <span class="t-c"><span class="mw-geshi c source-c"><span class="kw2">enum</span></span></span> is looked up in the tag name space.</div>
<div class="t-li1"><span class="t-li">3)</span> identifier that follows the <a href="operator_member_access.html" title="c/language/operator member access">member access</a> or member access through pointer operator is looked up in the name space of members of the type determined by the left-hand operand of the member access operator.</div>
 <table class="t-rev-begin">
<tr class="t-rev t-since-c23"><td>
<div class="t-li1"><span class="t-li">4)</span> identifier that directly appears in an attribute specifier (<span class="t-c"><span class="mw-geshi c source-c"><span class="br0">[</span><span class="br0">[</span>...<span class="br0">]</span><span class="br0">]</span></span></span>) is looked up in the global attribute name space.</div>
<div class="t-li1"><span class="t-li">5)</span> identifier that follows the <span class="t-c"><span class="mw-geshi c source-c"><span class="sy4">::</span></span></span> token following an attribute prefix is looked in the name space introduced by the attribute prefix.</div>
</td>
<td><span class="t-mark-rev t-since-c23">(since C23)</span></td></tr>
</table>
<div class="t-li1"><span class="t-li">6)</span> all other identifiers are looked up in the name space of ordinary identifiers.</div>
<h3><span class="mw-headline" id="Notes">Notes</span></h3>
<p>The names of <a href="../preprocessor/replace.html" title="c/preprocessor/replace">macros</a> are not part of any name space because they are replaced by the preprocessor prior to semantic analysis.
</p><p>It is common practice to inject struct/union/enum names into the name space of the ordinary identifiers using a <a href="typedef.html" title="c/language/typedef">typedef</a> declaration:
</p>
<div dir="ltr" class="mw-geshi" style="text-align: left;"><div class="c source-c"><pre class="de1"><span class="kw1">struct</span> A <span class="br0">{</span> <span class="br0">}</span><span class="sy4">;</span>       <span class="co1">// introduces the name A in tag name space</span>
<span class="kw1">typedef</span> <span class="kw1">struct</span> A A<span class="sy4">;</span> <span class="co1">// first, lookup for A after "struct" finds one in tag name space</span>
                    <span class="co1">// then introduces the name A in the ordinary name space</span>
<span class="kw1">struct</span> A<span class="sy2">*</span> p<span class="sy4">;</span>        <span class="co1">// OK, this A is looked up in the tag name space</span>
A<span class="sy2">*</span> q<span class="sy4">;</span>               <span class="co1">// OK, this A is looked up in the ordinary name space</span></pre></div></div>
<p>A well-known example of the same identifier being used across two name spaces is the identifier <span class="t-c"><span class="mw-geshi c source-c">stat</span></span> from the POSIX header <code>sys/stat.h</code>. It <a rel="nofollow" class="external text" href="http://pubs.opengroup.org/onlinepubs/9699919799/">names a function</a> when used as an ordinary identifier and <a rel="nofollow" class="external text" href="http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/sys_stat.h.html">indicates a struct</a> when used as a tag.
</p><p>Unlike in C++, enumeration constants are not struct members, and their name space is the name space of ordinary identifiers, and since there is no struct scope in C, their scope is the scope in which the struct declaration appears:
</p>
<div dir="ltr" class="mw-geshi" style="text-align: left;"><div class="c source-c"><pre class="de1"><span class="kw1">struct</span> tagged_union <span class="br0">{</span>
   <span class="kw2">enum</span> <span class="br0">{</span>INT, FLOAT, STRING<span class="br0">}</span> type<span class="sy4">;</span>
   <span class="kw1">union</span> <span class="br0">{</span>
      <span class="kw4">int</span> integer<span class="sy4">;</span>
      <span class="kw4">float</span> floating_point<span class="sy4">;</span>
      <span class="kw4">char</span> <span class="sy2">*</span>string<span class="sy4">;</span>
   <span class="br0">}</span><span class="sy4">;</span>
<span class="br0">}</span> tu<span class="sy4">;</span>
 
tu.<span class="me1">type</span> <span class="sy1">=</span> INT<span class="sy4">;</span> <span class="co1">// OK in C, error in C++</span></pre></div></div>
 <table class="t-rev-begin">
<tr class="t-rev t-since-c23"><td>
<p>If a standard attribute, an attribute prefix, or a non-standard attribute name is not supported, the invalid attribute itself is ignored without causing an error.
</p>
</td>
<td><span class="t-mark-rev t-since-c23">(since C23)</span></td></tr>
</table>
<h3><span class="mw-headline" id="Example">Example</span></h3>
<div class="t-example"><div class="t-example-live-link"><div class="coliru-btn coliru-btn-run-init">Run this code</div></div>
<div dir="ltr" class="mw-geshi" style="text-align: left;"><div class="c source-c"><pre class="de1"><span class="kw4">void</span> foo <span class="br0">(</span><span class="kw4">void</span><span class="br0">)</span> <span class="br0">{</span> <span class="kw1">return</span><span class="sy4">;</span> <span class="br0">}</span> <span class="co1">// ordinary name space, file scope</span>
<span class="kw1">struct</span> foo <span class="br0">{</span>      <span class="co1">// tag name space, file scope</span>
    <span class="kw4">int</span> foo<span class="sy4">;</span>      <span class="co1">// member name space for this struct foo, file scope</span>
    <span class="kw2">enum</span> bar <span class="br0">{</span>    <span class="co1">// tag name space, file scope</span>
        RED       <span class="co1">// ordinary name space, file scope</span>
    <span class="br0">}</span> bar<span class="sy4">;</span>        <span class="co1">// member name space for this struct foo, file scope</span>
    <span class="kw1">struct</span> foo<span class="sy2">*</span> p<span class="sy4">;</span> <span class="co1">// OK: uses tag/file scope name "foo"</span>
<span class="br0">}</span><span class="sy4">;</span>
<span class="kw2">enum</span> bar x<span class="sy4">;</span> <span class="co1">// OK: uses tag/file-scope bar</span>
<span class="co1">// int foo; // Error: ordinary name space foo already in scope </span>
<span class="co1">//union foo { int a, b; }; // Error: tag name space foo in scope</span>
 
<span class="kw4">int</span> main<span class="br0">(</span><span class="kw4">void</span><span class="br0">)</span>
<span class="br0">{</span>
    <span class="kw1">goto</span> foo<span class="sy4">;</span> <span class="co1">// OK uses "foo" from label name space/function scope</span>
 
    <span class="kw1">struct</span> foo <span class="br0">{</span> <span class="co1">// tag name space, block scope (hides file scope)</span>
       <span class="kw2">enum</span> bar x<span class="sy4">;</span> <span class="co1">// OK, uses "bar" from tag name space/file scope</span>
    <span class="br0">}</span><span class="sy4">;</span>
    <span class="kw1">typedef</span> <span class="kw1">struct</span> foo foo<span class="sy4">;</span> <span class="co1">// OK: uses foo from tag name space/block scope</span>
                            <span class="co1">// defines block-scope ordinary foo (hides file scope)</span>
    <span class="br0">(</span>foo<span class="br0">)</span><span class="br0">{</span>.<span class="me1">x</span><span class="sy1">=</span>RED<span class="br0">}</span><span class="sy4">;</span> <span class="co1">// uses ordinary/block-scope foo and ordinary/file-scope RED</span>
 
foo<span class="sy4">:;</span> <span class="co1">// label name space, function scope</span>
<span class="br0">}</span></pre></div></div>
</div>
<h3><span class="mw-headline" id="References">References</span></h3>
<div class="t-ref-std-17">
<ul><li> C17 standard (ISO/IEC 9899:2018): 
</li></ul>
<dl><dd><ul><li> 6.2.3 Name spaces of identifiers (p: 29-30)
</li></ul>
</dd></dl>
</div>
<div class="t-ref-std-11">
<ul><li> C11 standard (ISO/IEC 9899:2011): 
</li></ul>
<dl><dd><ul><li> 6.2.3 Name spaces of identifiers (p: 37)
</li></ul>
</dd></dl>
</div>
<div class="t-ref-std-c99">
<ul><li> C99 standard (ISO/IEC 9899:1999): 
</li></ul>
<dl><dd><ul><li> 6.2.3 Name spaces of identifiers (p: 31)
</li></ul>
</dd></dl>
</div>
<div class="t-ref-std-c89">
<ul><li> C89/C90 standard (ISO/IEC 9899:1990): 
</li></ul>
<dl><dd><ul><li> 3.1.2.3 Name spaces of identifiers 
</li></ul>
</dd></dl>
</div>
<h3><span class="mw-headline" id="See_also">See also</span></h3>
<table class="t-dsc-begin">

</table>

<!-- 
NewPP limit report
Preprocessor visited node count: 1322/1000000
Preprocessor generated node count: 4171/1000000
Post‐expand include size: 35963/2097152 bytes
Template argument size: 8832/2097152 bytes
Highest expansion depth: 13/40
Expensive parser function count: 0/100
-->

<!-- Saved in parser cache with key mwiki1-mwiki_en_:pcache:idhash:13877-0!*!0!!en!*!* and timestamp 20220605072646 -->
</div>                    <!-- /bodycontent -->
                                        <!-- printfooter -->
                    <div class="printfooter">
                    Retrieved from "<a href="https://en.cppreference.com/mwiki/index.php?title=c/language/name_space&amp;oldid=136120">https://en.cppreference.com/mwiki/index.php?title=c/language/name_space&amp;oldid=136120</a>"                    </div>
                    <!-- /printfooter -->
                                                            <!-- catlinks -->
                    <!-- /catlinks -->
                                                            <div class="visualClear"></div>
                    <!-- debughtml -->
                                        <!-- /debughtml -->
                </div>
                <!-- /bodyContent -->
            </div>
        </div>
        <!-- /content -->
        <!-- footer -->
        <div id="cpp-footer-base" class="noprint">
            <div id="footer">
                        <div id="cpp-navigation">
            <h5>Navigation</h5>
            <ul><li><a href="https://en.cppreference.com/w/c/language/name_space">Online version</a></li><li>Offline version retrieved 2022-07-30 14:05.</li></ul></div>
                        <ul id="footer-info">
                                    <li id="footer-info-lastmod"> This page was last modified on 6 December 2021, at 03:53.</li>
                                    <li id="footer-info-viewcount">This page has been accessed 30,510 times.</li>
                            </ul>
                    </div>
        </div>
        <!-- /footer -->
        <script>if(window.mw){
mw.loader.state({"site":"loading","user":"missing","user.groups":"ready"});
}</script>
<script src="../../../common/skin_scripts.js"></script>
<script>if(window.mw){
mw.loader.load(["mediawiki.action.view.postEdit","mediawiki.user","mediawiki.page.ready","mediawiki.searchSuggest","mediawiki.hidpi","ext.gadget.ColiruCompiler","ext.gadget.MathJax"], null, true);
}</script>
<script src="../../../common/site_scripts.js"></script>
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-2828341-1']);
_gaq.push(['_setDomainName', 'cppreference.com']);
_gaq.push(['_trackPageview']);
</script><!-- Served in 0.359 secs. -->
	</body>
<!-- Cached 20220605072646 -->
</html>